设计C 语言程序,输出码值为32~127 的ASCII 码值、字符对照表,每8 列为一行 。
作者&投稿:德厚 (若有异议请与网页底部的电邮联系)
#include
int main()
{
for (int i=32; i<=127; i++)
{
printf("%d: %c",i,i);
if ((i-31)%8==0)
{
printf("
");
}
}
return 0;
}
楼上用干嘛,又没有用到动态分配空间;main默认是int型,没必要加个int吧;题中的赋值没有负数,没必要把c定义成unsigned吧?循环条件写的也很垃圾……没必要用16进制
#include
main()
{
char c;
int n=0;
printf("ASCII table:
");
for(c=33; c<=127; c++)
{
printf("symble:%c value:%d",c,c);
n++;
if(n%5==0)
printf("
");
}
}
鄙视为了点分瞎回答别人问题的!
#include "stdio.h"
#define MAX 10
#define R 16
char *getHex(int num)
{
char arr[MAX];
char chars[] = {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
int i = 0, len;
char temp;
while(num)
{
arr[i++] = chars[num%R];
num /= R;
}
len = i;
for(i=0; i<len/2; i++)
{
temp = arr[i];
arr[i] = arr[len-i-1];
arr[len-i-1] = temp;
}
arr[len] = '\0';
return arr;
}
void list()
{
int ch, j;
int value;
for(ch=32; ch<48; ch++)
{
printf("%4c",'|');
for(j=0; j<6; j++)
{
value = ch + 16 * j;
printf("%3s%4d%2c%2c", getHex(value), value, value, '|');
}
printf("\n");
}
}
int main(char *argv, int args)
{
list();
return 0;
}
#include<iostream>
using namespace std;
void main()
{char a;
int i;
for(i=32;i<=127;i++)
{a=i;
cout<<i<<" "<<a<<"\t";}
}
这个是C++,你把cout换成printf啥的就行了吧,我忘了c语言是怎么输出了,还有头函数改了,最后那个每8列为一行没看太懂啊。。。反正给换行了,good luck!
#include<stdio.h>
void main()
{
int i;
for(i=32;i<128;i++)
{
if((i-32)%4==0)
printf("\n");
printf("%c %3d ",i,i);
}
printf("\n");
}
已经运行过了,没有错误!
有结果,但是如果8列一行的话,很不好看!
你自己先运行一下看看,不行的话,稍微改一下就可以了!
#include <stdio.h>
int main(int argc, char* argv[])
{
for (int i = 32; i <= 127; i++)
{
printf("%3d->%c ", i, i);
if ((i + 1) % 8 == 0)
{
printf("\n");
}
}
printf("\n");
return 0;
}
我这可是没有错误啊
我试过的
还有什么问题吗
祝奔谱安: #includeint main(){ int i; for(i=32; i<=126; i++) printf("%d -- %c\n",i,i); printf("\n"); return 0; }
临湘市18515736175: 设计C 语言程序,输出码值为32~127 的ASCII 码值、字符对照表,每8 列为一行 .用FOR文 - ?
祝奔谱安: int main() { int i; for(i=32;i { if(i%8==0) printf("\n"); printf("%d---%c,i,i); } }
临湘市18515736175: C语言.编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并打印. - ?
祝奔谱安: #include <stdio.h> #include <string.h> int main() { char data[33]; int dota[33]; int i, j, num, len; gets(data); len = strlen(data); for (i = 0; i <= len; i++) { dota[i] = (int)data[i] -'0'; } num = dota[0]; for (j = 1; j < len; j++) { num = num * 2 + (int)dota[j]; } printf("%d\n", num); } //改了一下,自己看吧!不明可以问的!
临湘市18515736175: 一道简单的C程序.?
祝奔谱安: 会输出33 在c里scanf("%c",&c);是不过滤空格的 你输入完1 接着是空格 char c接受的不是后面的a 而是空格 空格的asc码值为32 所以最终输出33 c++里的cin是会过滤空格和回车的 c里的scanf不过滤空格和回车,所以如果你要读取char的时候,一定要注意对空格和回车的处理 这题如果想达到你想要的效果,需要对1和a之间的空格进行处理 这样写就行了 scanf("%d %c",&a,&c); 意思一个int后面是个空格,然后是个char 这样a就读到了变量c里了结果为98 如果觉得回答还满意 请采纳我的吧 :-)
临湘市18515736175: 设计C 语言程序,输出码值为32~127 的ASCII 码值、字符对照表,每8 列为一行 .?
祝奔谱安: 每8列为一行这个比较难,因为一屏的宽度有限,一行显示6列还差不多: #include "stdio.h" #define MAX 10 #define R 16 char *getHex(int num) { char arr[MAX]; char chars[] = {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}; int i = 0, len; char temp;...
临湘市18515736175: 用C语言编写程序,输出ASCII码 - ?
祝奔谱安: 在ASC||中,只有32~125是可以打印的字符,其余都是控制字符,不能打印. 具体程序为: #includevoid main() { int i=0,a; char c; printf("\t\tASC||码对照表\n"); for(a=32;a<126;a++) { c=a; printf("%c=%3d\t",c,a); i++; if(i%7==0) printf("\n"); } printf("\n"); }
临湘市18515736175: 设计C语言程序,输出值为33~127的ASCII码码值,字符对照表 - ?
祝奔谱安: 楼上用<stdlib.h>干嘛,又没有用到动态分配空间;main默认是int型,没必要加个int吧;题中的赋值没有负数,没必要把c定义成unsigned吧?循环条件写的也很垃圾……没必要用16进制#include <stdio.h> main() { char c; int n=0; printf("ASCII table:\n"); for(c=33; c<=127; c++) { printf("symble:%c value:%d",c,c); n++; if(n%5==0) printf("\n"); } }鄙视为了点分瞎回答别人问题的!
临湘市18515736175: c语言程序程序main如下: char cc,a,b; cc='A'; a=cc+32; b=cc||32; printf("%c %d\n",a,b); 输出?为啥? - ?
祝奔谱安: char cc,a,b; // cc='A'; // A的ASCII码值 65 赋值给变量cc a=cc+32; // 将A的ASCII码值 65加上32后得小写字母'a'的ASCII码值 b=cc||32; // '||' 是逻辑或运算,两边只要有一个为0则结果得0,两边都不为0,结果得1.此时b=1 printf("%c %d\n",a,b); //输出 变量a所存的字符,和b的值.
临湘市18515736175: C语言程序设计,“输入两S写字母,将第一个字母转换为小写输出,并输出小写字母的ASCII值,将第二个字母的 - ?
祝奔谱安: #include<stdio.h> void main() { char c[2]; printf("请输入两个字符\n"); scanf("%c%c",&c[0],&c[1]); //输入两个字符时,中间没有空格或回车隔开(直接输入SS即可)// printf("第一个字符转化结果是:\n"); printf("%c %d\n",c[0]+32,c[0]+32); printf("第二个字符转化结果是:\n"); printf("%d %d\n",c[1],c[1]+32); }
临湘市18515736175: c语言输入一个数减32然后输出和输入小写字母变为大写字母有什么区别? - ?
祝奔谱安: 在 C 语言中区分字母的大小写,利用 ASCII 码中大写字母和小写字母之间的转换关系(差值为 32),可以将小写字母转换为大写字母.编写程序实现,从键盘上输入一个小写字母,按回车键,程序将该小写字母转换为大写字母,并输出其 ...