A. 关于c语言字符型
关于printf("%c"a[i]);(如果把他换成printf("%s",a[i]);为什么不能编译?
回答: 编译应该没问题, 只是运行时必定错误.
字符串指一串连续的字符型的存储域. C语言的字符串在操作时一般以0值字符标志字符串的尾字符(占一个字符的存储域,但不计入字符串长度).
"%c"应该对应于字符型变量(当然字符串中的一个字符也可以);"%s"应该对应于一个指向字符串的指针变量.执行printf("%s",a[i]);时, 程序把字符a[i]的值作为字符串指针来使用,当然就发生错误了. 如果写成printf("%s",a)甚至printf("%s",&a[2])都是正确的.
另外, 用"%s"不用使用for循环, 一个printf("%s",a)即可输出一个以空字符(0)结尾的字符串; 而用for循环加printf("%c",a[i])的方式, 则是以字符方式输出a这个字符数组中全部10个字符, 即使这些字符不构成以空字符(0)结尾的字符串.
由此看来字符串必定是字符数组, 而字符数组里存储的不一定是字符串. 字符数组里每一个元素都可以取-128~127的值, 无符号字符数组里每一个元素都可以取0~255的值. 而C语言中的字符串所取的值是以0标志结束的一串非零字符(即-128~-1, 1~127; 对应于无符号字符是1-255; 大多在可打印字符和有限的控制字符范围内取值).
B. C语言怎么声明字符串类型的变量
#include <STDIO.H>
void main()
{
char *cp = "hello";
char arr[10] = "hello";
}
C. c语言字符型和字符串型的区别
我只回答一下你提出的问题吧.其他不懂的你可以再跟我联系.
char c; 声明字符变量c,系统为c分配一个字符的空间
c="abcd"; //这是是错误的. abcd要占4的字符的空间,c中放不下.
声明字符串常量也能用"char".要用到数组.(如果你没学到数组,等你学了以后就明白了)例:
char string[4];
string="abcd";
string中存放的就是字符串"abcd"了.
打印字符型的时候,printf("%c/n,"c1),如果是打印字符串型,只需把%c改为%s即可.例:
printf("%s",string); //打印字符串string(abcd)
D. c语言 字符类型都有什么
用字符串数组。
#include <stdio.h>
#include<math.h>
void main()
{
char name[4][20];//存储4个名字,每个名字最多20个字符
scanf("%s",name[0]);
printf("%s",name[0]);
scanf("%s",name[1]);
printf("%s",name[1]);
scanf("%s",name[2]);
printf("%s",name[2]);
scanf("%s",name[3]);
printf("%s",name[3]);
getche();
}
E. c语言中有字符串类型的常量和变量
是的。字符串常量,就是用双引号括起来的字符串,例如 “Abc123Xyz”,“FG and HI", 它们的”值, 如同常数,一旦定了, 是不可改变的。它们被存放在常数区。
字符串类型的变量,就是 char 型数组,例如 char s[80]; 它们的 值 是可以改变的。
例如 char s[80]="abcd 1234 wxyz"; 初始化 s 有了 值 “abcd 1234 wxyz”。
strcpy(s,"Good Night!"); s的值 变成 "Good Night!" 了。
F. C语言有字符串这种数据类型吗
C语言有字符串这种数据类型。
C/C++语言 用 char 数组 存放 字符串。
例如:
charstr[]="abcd1234";
char*ss="1234XYZ";
printf("%s %s ",str,ss);C++ 有 string 类 (class) , 术语 “类” 不是 术语“类型”。java 学了 string 类。例如 :
#include<iostream>
#include<string>
usingnamespacestd;
intmain()
{
stringstr1,str2,str3;
str1="Teststring:";//c-string
str2='x';//singlecharacter
str3=str1+str2;//string
cout<<str3<<endl;
return0;
}
C/C++还可以自己定义类型,例如:
#include<stdio.h>
typedefcharJv_str[100];
main(){
Jv_strs;
printf("enterastring ");
gets(s);
printf("thestringis:%s ",s);
}
G. C语言中字符串与字符有什么区别
字符串就是“abcdefg”,这是字符串
字符是‘a’,‘b’,这些是字符
字符串是由一串字符组成的
而字符则是单个字母或符号
另外,C语言里面没有字符串类型,C++,C#,Java这些才有。
C语言一般使用char型数组或指针来代替字符串
H. c语言 字符的类型
#include"stdio.h"
intmain()
{
charz;
scanf("%c",&z);
if(z<'0'){
printf("other");
}elseif(z<'A'){
printf("numeric");
}elseif(z<='z'){
printf("alpha");
}else{
printf("other");
}
return0;
}
I. C语言中字符型和字符串型的区别
chara;//字符型只能接收一个字符
chara[10]//字符串型可以保存十个字符
J. C语言字符串中的数字类型
b[i]=6;
这个地方需要修改,ASCII码的6和字符6不是一回事。
你可以修改为:
b[i]='6';
或者
b[i]=6 + '0';