1、练习3:(数组和字符串),(23)有以下程序 main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+7) if(pi%2) j+=pi; printf(“%dn“,j); 程序运行后的输出结果是 B A)42 B)45 C)56 D)60,(24)有以下程序 main() char a7=“a00a00“;int i,j; i=sizeof(a); j=strlen(a); printf(“%d %dn“,i,j); 程序运行后的输出结果是 C A)2 2 B)7 6 C)7 2 D)6 2 (25)以下能正确定义一维数组的选项是 B A
2、)int a5=0,1,2,3,4,5; B)char a=0,1,2,3,4,5; C)char a=A,B,C; D)int a5=“0123“;,(27)已有定义:char a=“xyz“,b=x,y,z;以下叙述中正确的是 C A)数组a和b的长度相同 B)a数组长度小于b数组长度 C)a数组长度大于b数组长度 D)上述说法都不对,指出下面各说明语句中哪些是合法的: BA. int abcd0x80; B. char 9ab10; C. char chi-200; D. int aaa5=3,4,5;E. float key=3.0,4.0,1,0; F. char disk; G.
3、int n,floppyn; H. int cash4=1,2,3,4,5,6; A. ABG B. ADE C. DE D. ABCDEFGH,2. 下面的程序中哪一行有错误? D#include main()float array5=0.0; /第A行int i;for(i=0;i5;i+)scanf(“%f“, /第C行A. 第A行 B. 第B行 C.第C行 D. 没有,3. 字符串“abn012/“的长度为 B。A. 9 B. 10 C. 11 D. 12 4. 下面哪一项是不正确的字符串赋值或赋初值的方式。 CA. char *str; str=“string“; B. char s
4、tr7=s,t,r,i,n,g; C. char str110;str1=“string”; D. char str1=“string“,str2=“12345678“;5. 若有以下说明和语句,则输出结果是哪一项?C(strlen(s)为求字符串s的长度的函数) char s12=“a book!“;printf(“%d“,strlen(s);A. 12 B. 8 C. 7 D. 11,6. 若有以下说明和语句,则输出结果是_B_。(strlen(s)为求字符串s的长度的函数) char sp=“tv0willn“; printf(“%d“,strlen(sp);A. 14 B. 3 C.
5、9 D. 字符串中有非法字符7. 若有以下说明和语句,则输出结果是_。 char str=“c:abc.dat“;printf(“%s“,str); A.字符串中有非法字符 B. “c:abc.dat” C.“c:abc.dat” D.“c:abc.dat“,(21)有以下程序 main() int i=1,j=2,k=3; if(i+=1 程序运行后的输出结果是 D A)1 2 3 B)2 3 4 C)2 2 3 D)2 3 3 (22)若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式ab?a:cd?c:d的值 A A)1 B)2 C)3 D)4,常用排序法:,#include void main() int a10, i,j,k; for(i=0;iaj) 从小到大 k=ai; ai=aj; aj=k; for(i=0;i10;i+) printf(“%d “,ai); ,练习结束,