字符型常量代码
题目:输出26个大写字母和它们的ASCII代码,每组输出两组数据。
#include<stdio.h>
int main(){
char c;
int i;
for(i=0;i<26;i++){
c=i+65;
printf("%3c %3d",c,c);
if(i%2==1)
printf("\n");
}
}
题目:等待从终端输入一个字符,当按Enter键时,程序才往下继续进行:
#include<stdio.h>
int main(){
printf("Press Enter to continue\n");
while( getchar() != '\n');
}
题目:从终端输入的一行字符中所有的小写字母装换成大写字母,其他字符不变。
#include<stdio.h>
int main(){
char c;
while((c=getchar())!='\0')
{
if( c<'z' && c>'a' )
c = c - 32;
putchar(c);
}
putchar('\n');
}
题目:统计输入的字符中空格、换行符、横向跳格(制表)符的个数,用感叹号!结束输入
#include<stdio.h>
#include<ctype.h>
int main(){
long n = 0;
char c;
while((c=getchar())!='!')
{
if(isspace (c)) //记录空格、换行符、横向跳格(制表)符的个数
n++;
printf(" n = %ld\n",n);
}
}
题目:把一串密码译成正文,密码以字符@表示结束。译码规则如下:
1.如果是字母,转换为字母序列的下一个字母;
2.如果是字母Z,译成A(与第一条相同,形成一个闭环)
3.无论是大小写字母都译成小写字母(即大写转换为小写)
4.其他字符原样输出(不作处理)
#include<stdio.h>
#include<ctype.h>
int main(){
char c;
c = getchar();
while( c!='@'){
if( isalpha(c)){
c = tolower(c);
c = (c-'a'+1) % 26 +'a';
}
putchar(c);
c=getchar();
}
printf("\n");
}