1.一下标识符中,不能做为合法的C语言用户定义标识符的是(C)
A。Answer B。to C。Signed D。_if
解析:c语言中,数值分为有符号数(signed) 和 无符号数(unsigned),有符号数区分正数和负数,无符号数只有正数,程序中如果不通过unsigned指定(如unsigned int x 来指定x为无符号数),则x默认为有符号数。
2.功能:用条件编译方法实现以下功能,输入一行电报文字,可以任选两种方式输出,一种为原文输出;另一种将字母变成下一个字母(如a变成b,C变成D,其他字符不变)输出。
#include "stdio.h"
main()
{
char str[80], *s =str;
int k;
printf("Input string:");
gets(str);
printf("Output string:");
#ifdef CHANGE //宏定义
for(;*s!='\0';s++)
{
if(*s>='a'&&*s<='z'||*s>='A'&&*s<='Z')
{
(*s)++;
if(*s>'Z'&&*s<'Z'+2)
*s='A';
if(*s>'z')
*s='a';
}
}
printf("%s\n",str);
}
3.功能:两个乒乓球队进行比赛,各处3人。甲队为a,b,c三人,乙队为x,y,z三人。以抽签决定比赛名单。有人向队员打听比赛的名单,a说他不和x比,c说他不和x,z比。请编程序找出三对赛手的名单。
#include<stdio.h>
main()
{
char i,j,k;/*i 是 a 的对手,j 是 b 的对手,k是 c 的对手*/
for(i='x';i<='z';i++)
for(j='x';j<='z';j++)
{
if(i!=j)
for(k='x'; k<='z';k++)
{
if(i!=k&&j!=k)
{
if(i!='x'&&k!= 'z')
printf("order is a--%c\tb--%c\tc--%c\n",i,j,k);
}
}
}
}