高手进..c语言问题
计算#include<stdio.h>voidmain(){charc1=‘a’,c2=‘b',c3=’c',c4='\101',c5='\116';printf("a%...
计算
#include <stdio.h>
void main()
{
char c1=‘a’,c2=‘b',c3=’c',c4='\101',c5='\116';
printf ("a%cb%c\tc%c\tabc\n",c1,c2,c3);
printf ("t\b%c%c\n",c4,c5);
}
请说明一下做法 我是初学者..
主要是printf ("t\b%c%c\n",c4,c5); 这里
谢谢 .. 展开
#include <stdio.h>
void main()
{
char c1=‘a’,c2=‘b',c3=’c',c4='\101',c5='\116';
printf ("a%cb%c\tc%c\tabc\n",c1,c2,c3);
printf ("t\b%c%c\n",c4,c5);
}
请说明一下做法 我是初学者..
主要是printf ("t\b%c%c\n",c4,c5); 这里
谢谢 .. 展开
7个回答
展开全部
《计算机程序设计C语言》(B卷)
选择题(每小题1.5分,共24分)
1、以下不C语言关键字的是( )。
A、是student B、break C、select D、int
AC都不是
2、已知a,b是整形变量,则以下合法的表达式为( A )。
A、a+=a+1 B、a=b=b+a C、a=5++ D、a+b=2.5
3、C语言规定,在一个源程序中,main函数的位置( C )。
A、必须在最开始 B、必须在最后
C、可以任意 D、必须在系统调用的库函数的后面
4、有定义int a=10;则表达式a%3/3的值为(A )。
A、0 B、1 C、2 D、10
5、定义a,b为整形变量,且均初始化为的正确语句是(B )。
A、int a,b=0; B、int a=0,b=0; C、int a=b=0; D、int a=0;b=0;
6、已定义c为字符型变量,则下列语句中正确的是( C )。
A、c=’97’; B、c=”97”; C、c=97 ; D、c=”a”;
7、通过scanf(“%d,%d”,&a,&b);要使a值为3,b值为4,则正确的数据输入形式为( D)。
A、3,4(回车) B、a=3,b=4(回车) C、a=3(回车)b=4(回车) D、3 4(回车)
8、命题x是小写字母,用C语言可描述为(A )。
A、x>=’a’&&x<=’z’ B、x>=’a’||x<=’z’
C、’a’<=x<=’z’ D、x>=’a’,x<=’z’
9、设有定义int a[4]=,*p=&a[2];则执行printf(“%d\n”,8p--);的结果为( )。
应该是printf(“%d\n”,*p--);答案就是C
A、0 B、2 C、4 D、6
10、有定义:float x=10.5;则下面表达式错误的是( A )
A、x%2 B、(int)x%2 C、x/2 D、(int)x/2
11、以下程序段中循环执行的次数是( D )
int i,k=0; for(i=0;i!=k;i--)k++
A、无限次 B、有语法错,不能执行 C、1次 D、0次
12、有以下函数定义:
void fun(int x,int*y)
若以下选项中的变量都已正确定义,则对函数fun的正确调用语句是( C )
A、fun(10,int *n) B、k=fun(10,12); C、fun(10,&n0; D、void fun(&10,n);
13、有定义;char c;若要人键盘输入一个字符给c变量,正确的语句是( D )。
A、scanf(“%s”,&c); B、scanf(“%c”,c); C、getchar(c); D、c=getchar();
14、以下定义语句,错误的是( D )B也有点问题可能多了个{
A、char a[10],*p=a; B、char a[]={“abcdefg”,*p=&a[3];
C、int a[]=,*p=a+1 D、int n,a[n=5];
15、有定义:int a[2][2]=,};则元素a[0][2]的值是( D )
A、0 B、1 C、2 D、不定值
16、以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。
main()
/*Beiginning*/
{int r;float s;
scanf(“%d”,&r);
s=pi*r*r;printf(“s=%f\n’,s);
}
出错的原因是(D )printf()里面可能又是打错有个单引号
A、注释语句书写位置错误 B、存放圆半径的变量r不应该定义为整型
C、输出语句中格式描述符非法 D、计算圆面积的赋值语句中使用了非法变量
阅读程序,给出运行结果。(每小题4分,共16分)
main()
{int I,s=0;
for(i=15;i>0;i--)
{if(i%6==0)break;
s=s+I;}
printf(“%d\n”,s0;
}
test(int x)
{static int j=2;
x++;j--;
printf(“x=%d,j=%d\t”,x,j);
}
main()
fun(int a,int b)
{if(a>b)return(a);
else return(b);
}
main()
{int x=3,y=8,z=6,r;
r=fun(x+y,2*z);
printf(“%d\n”,r);
}
main()
{int i=10,m=0,n=0;
switch(i/10)
{case 0:m++;n++;
case 1:n++;
default:n++;
}
printf(“%d%d\n”,m,m);
}
程序填空(每空格3分,共30分)
程序的功能是统计整型数组中不能被5整除的数的个数。
main()
{int a[10],I,count=0;
for(i=0;i<10;i+=)
scanf(“____(1)_____”,&a[i]);
for(i=0;i<10;i++)
if(____(2)_____)_____(3)_____;
printf(“count=%d”,count);
}
以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。
#include____(1)_____
main()
{char s[80],d[80];int i,j;
gets(s);
for(i=j=0;s[i]!=’\0’;i++)
if(s[j]>=’0’&&s[j]<=’9’)
d[j]=’\0’;
___(3)____;
}
程序的功能为用冒泡法对含有n个元素的整型数组a,从小到大进行排序。
void sort(______(1)_____)
{int i,j,temp;
for(i=0;i<n-1;i++)
for(j=1;j<n-i;____(2)____)
if(a[j-1]>a[j])
}
main()
{int a[10],i;
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
sort(a,10);
for(i=0;i<10;i++)
printf(“%d”,a[i]);
}
编写程序(共30分)
编一个程序,计算:s=1+1/2+1/3+……+1/100
编一个函数,判断M是否为质数。再谝一主函数来调用该函数,输出3~100之间的质数。
选择题(每小题1.5分,共24分)
1、以下不C语言关键字的是( )。
A、是student B、break C、select D、int
AC都不是
2、已知a,b是整形变量,则以下合法的表达式为( A )。
A、a+=a+1 B、a=b=b+a C、a=5++ D、a+b=2.5
3、C语言规定,在一个源程序中,main函数的位置( C )。
A、必须在最开始 B、必须在最后
C、可以任意 D、必须在系统调用的库函数的后面
4、有定义int a=10;则表达式a%3/3的值为(A )。
A、0 B、1 C、2 D、10
5、定义a,b为整形变量,且均初始化为的正确语句是(B )。
A、int a,b=0; B、int a=0,b=0; C、int a=b=0; D、int a=0;b=0;
6、已定义c为字符型变量,则下列语句中正确的是( C )。
A、c=’97’; B、c=”97”; C、c=97 ; D、c=”a”;
7、通过scanf(“%d,%d”,&a,&b);要使a值为3,b值为4,则正确的数据输入形式为( D)。
A、3,4(回车) B、a=3,b=4(回车) C、a=3(回车)b=4(回车) D、3 4(回车)
8、命题x是小写字母,用C语言可描述为(A )。
A、x>=’a’&&x<=’z’ B、x>=’a’||x<=’z’
C、’a’<=x<=’z’ D、x>=’a’,x<=’z’
9、设有定义int a[4]=,*p=&a[2];则执行printf(“%d\n”,8p--);的结果为( )。
应该是printf(“%d\n”,*p--);答案就是C
A、0 B、2 C、4 D、6
10、有定义:float x=10.5;则下面表达式错误的是( A )
A、x%2 B、(int)x%2 C、x/2 D、(int)x/2
11、以下程序段中循环执行的次数是( D )
int i,k=0; for(i=0;i!=k;i--)k++
A、无限次 B、有语法错,不能执行 C、1次 D、0次
12、有以下函数定义:
void fun(int x,int*y)
若以下选项中的变量都已正确定义,则对函数fun的正确调用语句是( C )
A、fun(10,int *n) B、k=fun(10,12); C、fun(10,&n0; D、void fun(&10,n);
13、有定义;char c;若要人键盘输入一个字符给c变量,正确的语句是( D )。
A、scanf(“%s”,&c); B、scanf(“%c”,c); C、getchar(c); D、c=getchar();
14、以下定义语句,错误的是( D )B也有点问题可能多了个{
A、char a[10],*p=a; B、char a[]={“abcdefg”,*p=&a[3];
C、int a[]=,*p=a+1 D、int n,a[n=5];
15、有定义:int a[2][2]=,};则元素a[0][2]的值是( D )
A、0 B、1 C、2 D、不定值
16、以下程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。
main()
/*Beiginning*/
{int r;float s;
scanf(“%d”,&r);
s=pi*r*r;printf(“s=%f\n’,s);
}
出错的原因是(D )printf()里面可能又是打错有个单引号
A、注释语句书写位置错误 B、存放圆半径的变量r不应该定义为整型
C、输出语句中格式描述符非法 D、计算圆面积的赋值语句中使用了非法变量
阅读程序,给出运行结果。(每小题4分,共16分)
main()
{int I,s=0;
for(i=15;i>0;i--)
{if(i%6==0)break;
s=s+I;}
printf(“%d\n”,s0;
}
test(int x)
{static int j=2;
x++;j--;
printf(“x=%d,j=%d\t”,x,j);
}
main()
fun(int a,int b)
{if(a>b)return(a);
else return(b);
}
main()
{int x=3,y=8,z=6,r;
r=fun(x+y,2*z);
printf(“%d\n”,r);
}
main()
{int i=10,m=0,n=0;
switch(i/10)
{case 0:m++;n++;
case 1:n++;
default:n++;
}
printf(“%d%d\n”,m,m);
}
程序填空(每空格3分,共30分)
程序的功能是统计整型数组中不能被5整除的数的个数。
main()
{int a[10],I,count=0;
for(i=0;i<10;i+=)
scanf(“____(1)_____”,&a[i]);
for(i=0;i<10;i++)
if(____(2)_____)_____(3)_____;
printf(“count=%d”,count);
}
以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。
#include____(1)_____
main()
{char s[80],d[80];int i,j;
gets(s);
for(i=j=0;s[i]!=’\0’;i++)
if(s[j]>=’0’&&s[j]<=’9’)
d[j]=’\0’;
___(3)____;
}
程序的功能为用冒泡法对含有n个元素的整型数组a,从小到大进行排序。
void sort(______(1)_____)
{int i,j,temp;
for(i=0;i<n-1;i++)
for(j=1;j<n-i;____(2)____)
if(a[j-1]>a[j])
}
main()
{int a[10],i;
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
sort(a,10);
for(i=0;i<10;i++)
printf(“%d”,a[i]);
}
编写程序(共30分)
编一个程序,计算:s=1+1/2+1/3+……+1/100
编一个函数,判断M是否为质数。再谝一主函数来调用该函数,输出3~100之间的质数。
展开全部
c4是大写的A,c5是大写的N
printf ("a%cb%c\tc%c\tabc\n",c1,c2,c3)
意思是输出a再输出c1即a再输出b再输出c2即b
\t是换列符,是8个二进制位为一列,即换到当前列的下一列的开始位置
所以跳过4位再输出c再输出c3即c再跳过6位再输出abc换行
printf ("t\b%c%c\n",c4,c5)
如果没有\b,就输出tAN换行
\b的意思应该是跳过前一个,即不输出t就直接输出AN
所以最终结果为
aabb 四个空格 cc 六个空格 abc
AN
printf ("a%cb%c\tc%c\tabc\n",c1,c2,c3)
意思是输出a再输出c1即a再输出b再输出c2即b
\t是换列符,是8个二进制位为一列,即换到当前列的下一列的开始位置
所以跳过4位再输出c再输出c3即c再跳过6位再输出abc换行
printf ("t\b%c%c\n",c4,c5)
如果没有\b,就输出tAN换行
\b的意思应该是跳过前一个,即不输出t就直接输出AN
所以最终结果为
aabb 四个空格 cc 六个空格 abc
AN
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
‘\101’就是‘A’,\116是N,数字就是两个字母的ASC码,转义字符\b的作用是退格,如果没有\b的话会输出tAN,有了\b后光标会退一个,t就会被后面的字母盖住,所以输出结果为AN。不过总感觉你这题目怪怪的,既然是考转义字符,那么是 \t\b 好像还靠谱一点,会不会是你打错了?如果是那样的话,结果应该是_______AN(AN前有七个空格,先进八个再退一个)。也可能是我多心了吧,就这样了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
printf ("t\b%c%c\n",c4,c5);
"t"先输出字母t,
"t\b"\b是转义字符,是删除前一个字符,这样屏幕没有任何东西了
"t\b%c",c4 c4='\101',这是八进制表示的,转换为十进制是65,而65对应的字符为A
所以屏幕为A
"t\b%c%c\n",c4,c5与输出c4相当
"t"先输出字母t,
"t\b"\b是转义字符,是删除前一个字符,这样屏幕没有任何东西了
"t\b%c",c4 c4='\101',这是八进制表示的,转换为十进制是65,而65对应的字符为A
所以屏幕为A
"t\b%c%c\n",c4,c5与输出c4相当
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
printf ("t\b%c%c\n",c4,c5); \b 是退后一格的意思,在这里没啥用,放在后面的话,在屏幕上输的时候前面一个就会被后面的那个字符给覆盖。
希望对你有帮助
希望对你有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询