三、编程
1、从键盘上输入若干学生的成绩,当输入负数时结束输入,统计并输出最高成绩和最低成绩。 2、输出如下图所示的下三角形乘法九九表
1 2 3 4 5 6 7 8 9 1 2 4 3 6 9 4 8 12 16 5 10 15 20 25 6 12 18 24 30 36 7 14 21 28 35 42 49 8 16 24 32 40 48 56 64 9 18 27 36 45 54 63 72 81
六、数组
1.以下为一维整型数组a的正确说明是____D_____. a)int a(10); b)int n=10,a[n]; c)int n; d)#define SIZE 10 scanf(\ int a[n];
2.以下对二维数组a的正确说明是___C_____.
a)int a[3][]; b)float a(3,4); c)double a[1][4] d)float a(3)(4);
3.若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为_D.(假设a[0][0]位于数组的第一个位置上。)
a)i*m+j b)j*m+i c)i*m+j-1 d)i*m+j+1
4.若二维数组a有m列,则在a[i][j]前的元素个数为___B_____. a)j*m+i b)i*m+j c)i*m+j-1 d)i*m+j+1 5.若有以下程序段:
?????
int a[]={4,0,2,3,1},i,j,t; for(i=1;i<5;i++) {t=a[i];j=i-1; while(j>=0&&t>a[j]) {a[j+1]=a[j];j--;} a[j+1]=t;} ... ...
则该程序段的功能是___B______.
a)对数组a进行插入排序(升序) b)对数组a进行插入排序(降序)
c)对数组a进行选择排序(升序) d)对数组a进行选择排序(降序) 6.有两个字符数组a、b,则以下正确的输入语句是___B____.
a)gets(a,b); b)scanf(\7.下面程序段的运行结果是____D_____.
char a[7]=\
char b[4]=\
strcpy(a,b); 复制函数,将字符2的复制到1
printf(\空格 b)\\0 c)e d)f 8.判断字符串s1是否大于字符串s2,应当使用___D____.
a)if(s1>s2) b)if(strcmp(s1,s2)) c)if(strcmp(s2,s1)>0) d)if(strcmp(s1,s2)>0) 9.下面程序的功能是从键盘输入一行字符,统计其中有多少个单词,单词之间用空格分隔,请选择填空。
#include
main() {
char s[80],c1,c2=' '; int i=0,num=0; gets(s);
while(s[i]!='\\0') {c1=s[i]; if(i==0)c2=' '; else c2=s[i-1]; if(___)num++; i++; }
printf(\}
a)c1==' '&&c2==' ' b)c1!=' '&&c2==' ' c)c1==' '&&c2!=' ' d)c1!=' '&&c2!=' ' 10.下面程序的运行结果是__B______.
#include
{char str[]=\ int k;
for(k=2;(c=str[k])!='\\0';k++) {switch(c)
{case 'I':++k;break; case 'L':continue;
default:putchar(c);continue; }
putchar('*'); } }
a)SSW* b)SW* c)SW*A d)SW
填空 1. 若有定义:double x[3][5];则x数组中行下标的下限为____0_____,列下标的上限为___4______. 2.下面程序以每行4个数据的形式输出a数组,请填空。 #define N 20 main() {int a[N],i; for(i=0;i scanf(\_&a[i]_____); for(i=0;i {if (____i%4==0_________) _printf(“\\n”)____________ printf(\ } printf(\} 3. 下面程序可求出矩阵a的主对角线上的元素之和,请填空。 main() {int a[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) if(_i==j____)sum=sum+__a[i][i]_____; printf(\} 4. 当从键盘输入18并回车后,下面程序的运行结果是____10010____. main() {int x,y,i,a[8],j,u,v; scanf(\ y=x;i=0; do {u=y/2; a[i]=y%2; i++;y=u; }while(y>=1); for(j=i-1;j>=0;j--) printf(\} 5. 下面程序用插入法对数组a进行降序排序。请填空。 main() {int a[5]={4,7,2,5,1}; int i,j,m; for(i=1;i<5;i++) {m=a[i]; j=_i-1___; while(j>=0&&m>a[j]) {_a[j+1]=a[j]______; j--; } _a[j+1]______=m;
相关推荐: