设有char*a=”ABCD”;,则printf(“%s”,a)的输出是(),而printf(“%c”,*a)的输出是()。
第1题:
下面程序的输出是______。 char s[]="ABCD"; main() { char *p; for(p=s;p<s+4;p++) printf("%s\n",p); }
A.ABCD BCD CD D
B.A B C D
C.D C B A
D.ABCD ABC AB A
第2题:
以下程序的输出结果是main(){ char s[]="abcdef"; s[3]=’\0’; printf("%s\n",s);}
第3题:
下面程序的输出结果是 ( ) char b[]="ABCD"; main() { char * chp; for ( chp=b; * chp;chp + =2 )printf("%s",chp); print{("\n"); }
A.ABABCD
B.ABCDAB
C.ABCDD
D.ABCDCD
第4题:
以下程序的输出结果为main(){ char *alpha[6]={"ABCD","EFGH","IJKL","MNOP","QRST","UVWX"}; char **p; int i; p=alpha; for(i=0;i<4;i++) printf("%s",p[i]); printf("\n");} A.ABCDEFGHIJKL B.ABCDC.ABCDEFGHIJKLMNOP D.AEIM
第5题:
我知道在C++中cout 和printf 都能用于输出,但是他俩肯定在输出的方式、细节上有差别的。
我想问 指针,char* p=“abcd” 按我的理解p就是存储地址的变量,输出p就应该是输出存储“abcd”的空间首地址。
用printf则输出的是存储“abcd”的空间首地址(这和我预想的一样),用cout输出p则整个字符数组都输出了,这是为什么?他们两个的输出方式到底有什么差别。以至于输出同一个变量会得到不同的结果?
比如:
#include<iostream>
#include<stdio.h>
using namespace std;
int main () {
char* p="abcd";
cout<<p<<" "<<*p;//这里p输出的是abcd完整的字符串,而*p则输出的是第一个字符a。
printf("%x %c",p,*p);//这里p则输出的是存储“abcd”的空间首地址,*p则输出第一个字符a。
return 0;
}
您说的这个跟cout,printf没关系
输出不同是因你printf的格式不对
应该为printf("%s %c",p,*p)
cout<<p默认帮你进行了格式化,即是%s“”
第6题:
若有以下定义和语句,则输出结果是(口代表空格)______。char s[10]; s="abcd"; printf("%s\n",s);
A.输出abcd
B.输出a
C.输出abcd口口口口口
D.编译不通过
第7题:
设有如下程序: char sub(char * q) {while(* q,='\0') {if(*q>='A'&&*q<='Z')*q=* q+32; else if(*q>='a' &&*q<='z')*q=*q-32; printf("%c",*q); q++;} } main() {char *s="abcABC"; sub(s); } 则程序运行后的输出结果是( )
A.ABCabc
B.abcABC
C.abcabc
D.ABCABC
第8题:
设有如下函数定义,则输出结果为_______。 char*fun(char*str) { char*p=str; while(*p) {if(*p>'d')continue; p++; } return p; } main() { printf("%s\n",fun("welcome!")); }
A.welcome
B.come!
C.w
D.程序进入死循环
第9题:
下面程序输出的结果是( )。 #include<stdio.h> main() { char *a="1234"; fun(a); printf("\n"); } fun(char *s) { char t; if(*s) { t=*S++;fun(s);} else return; if(t!='\0') putchar(t); }
A.1234
B.4321
C.1324
D.4231
第10题:
若有以下定义语句:chars[10],s="abcd”;printf(“%s/n”,s);则运行结果是()
第11题:
55
105
107
58
第12题:
ABCDEFGHIJKLMNOP
ABCDEFGHHKL
ABCD
AEIM
第13题:
有以下程序: #include <stdio.h> main( ) { char s[ ] ="159" , * p; p=s; printf( "% c", * p + + ); printf("%~", * p++);}程序运行后的输出结果是( )。
A.15
B.16
C.12
D.59
第14题:
以下程序运行后的输出结果是( )。 include<string.h> main() {char ch[]="abcd",x[4][4];int i; for(i=0;i<4;i++)strcpy(x[i],ch); for(i=0;i<4;i++)printf("%s",&x[i][i]); printf("\n"); }
第15题:
以下程序: #include<stdio.h> #include<string.h> main() {char str[]="abcd\n\123\xab"; printf("%d",(str)); } 运行后的输出结果是( )。
A.10
B.9
C.7
D.14
第16题:
若有定义和语句 ( ) char s[10];s="abcd";printf("%s\n",s); 则结果是(以下μ代表空格)
A.输出abcd
B.输出a
C.abcdμμμμμ
D.编译不通过
第17题:
有以下程序(说明:字母A的ASCII码值是65)
#include
void fun(char *s)
{ while(*s)
{ if(*s%2) printf("%c",*s);
s++;
}
}
main()
{ char a[]="BYTE";
fun(a); printf("\n");
}
程序运行后的输出结果是
A.BY
B.BT
C.YT
D.Y
第18题:
下面程序的输出结果是( )。 char s()="ABCD",*p; main() { for(p=s;p<s+4;p++)printf("%s\n",p); )
A.ABCD BCD CD D
B.A B C D
C.D C B A
D.ABCD ABC AB A
第19题:
设已执行预编译命令#include<string.h>,以下程序段的输出结果是( )。 char s[]=" an apple" ; printf(" %d\n" ,strlen(s));
A.7
B.8
C.9
D.10
第20题:
设有定义:"char s[12]={"string"};" 则printf("%d\n",strlen(s));的输出是( )
A.6
B.7
C.11
D.12
第21题:
A.c
B.cde
C.b
D.abcde
第22题:
若有定义和语句: char s[10]:s=""abcd"";printf(""%s/n"",s); 则结果是(以下u代表空格)()
第23题:
输出abcd
输出a
输出abcduuuuu
编译不通过