
C语言编程题。速求答案!!~~~~!!!!积分送上~!
1、编写一个函数,输入一个字符,如果字符是数字或字母,返回对应的ASCII码;否则返回0。2、编写一个函数,输入一个整数,在函数中打印该整数对应的二进制字符串。3、编写一...
1、编写一个函数,输入一个字符,如果字符是数字或字母,返回对应的ASCII码;否则返回0。
2、编写一个函数,输入一个整数,在函数中打印该整数对应的二进制字符串。
3、编写一个函数,可以将任意十进制整数转换为八进制数。
全是东北大学恶心人的C语言练习题.....求解~!发到邮箱458678309@qq.com
谢谢啦~!! 展开
2、编写一个函数,输入一个整数,在函数中打印该整数对应的二进制字符串。
3、编写一个函数,可以将任意十进制整数转换为八进制数。
全是东北大学恶心人的C语言练习题.....求解~!发到邮箱458678309@qq.com
谢谢啦~!! 展开
5个回答
展开全部
#include <iostream>
// 第一个函数
int getAsc(char ch)
{
if (((ch >= '0')&&(ch <= '9')) ||
((ch >= 'a')&&(ch <= 'z')) ||
((ch >= 'A')&&(ch <= 'Z')))
{
return int(ch);
}
else
{
return 0;
}
}
// 第二个函数
void printBinary(int iData)
{
int i = 31;
char bValue[32] = {0};
do
{
bValue[i] = iData%2;
iData /= 2;
i--;
} while (0 != iData);
for (int j = 0; j < 32; j++)
{
std::cout << int(bValue[j]);
}
}
// 第三个函数,我不太清楚你所谓的"转换",是不是和上一个一样输出?我是这么实现的
void printOctal(int iData)
{
int i = 10;
char bValue[11] = {0};
do
{
bValue[i] = iData%8;
iData /= 8;
i--;
} while (0 != iData);
for (int j = 0; j < 11; j++)
{
std::cout << int(bValue[j]);
}
}
// 测试代码,输出字符'9'的asc码,输出'X'的asc码
// 输出1000的二进制和八进制(前面空位用0填充)
int main()
{
int x = getAsc('9');
std::cout << x << std::endl;
x = getAsc('X');
std::cout << x << std::endl;
printBinary(1000);
std::cout << std:;endl;
printOctal(1000);
std::cout << std::endl;
return 0;
}
// 第一个函数
int getAsc(char ch)
{
if (((ch >= '0')&&(ch <= '9')) ||
((ch >= 'a')&&(ch <= 'z')) ||
((ch >= 'A')&&(ch <= 'Z')))
{
return int(ch);
}
else
{
return 0;
}
}
// 第二个函数
void printBinary(int iData)
{
int i = 31;
char bValue[32] = {0};
do
{
bValue[i] = iData%2;
iData /= 2;
i--;
} while (0 != iData);
for (int j = 0; j < 32; j++)
{
std::cout << int(bValue[j]);
}
}
// 第三个函数,我不太清楚你所谓的"转换",是不是和上一个一样输出?我是这么实现的
void printOctal(int iData)
{
int i = 10;
char bValue[11] = {0};
do
{
bValue[i] = iData%8;
iData /= 8;
i--;
} while (0 != iData);
for (int j = 0; j < 11; j++)
{
std::cout << int(bValue[j]);
}
}
// 测试代码,输出字符'9'的asc码,输出'X'的asc码
// 输出1000的二进制和八进制(前面空位用0填充)
int main()
{
int x = getAsc('9');
std::cout << x << std::endl;
x = getAsc('X');
std::cout << x << std::endl;
printBinary(1000);
std::cout << std:;endl;
printOctal(1000);
std::cout << std::endl;
return 0;
}
展开全部
#include<stdio.h>
int main()
{
char a;
int b;
a=getchar();
b=(int)a;
if((b>=97&&b<=115)||(b>=65&&b<=83)||(b>=48&&b<=57))
printf("%d ",a);
return 0;
}
第一个程序题
#include<stdio.h>
int main()
{int b,k,j,a[100];
int i=0;
printf("输入数字b\n");
scanf("%d",&b);
for(;b!=0;b=b/2)
{
j=b%2;
a[i]=j;
i++;
}
for(k=i-1;k>=0;k--)
printf("%d ",a[k]);
return 0;
}
第二个题
int main()
{
char a;
int b;
a=getchar();
b=(int)a;
if((b>=97&&b<=115)||(b>=65&&b<=83)||(b>=48&&b<=57))
printf("%d ",a);
return 0;
}
第一个程序题
#include<stdio.h>
int main()
{int b,k,j,a[100];
int i=0;
printf("输入数字b\n");
scanf("%d",&b);
for(;b!=0;b=b/2)
{
j=b%2;
a[i]=j;
i++;
}
for(k=i-1;k>=0;k--)
printf("%d ",a[k]);
return 0;
}
第二个题
追问
其他的两个呢?
追答
#include
#define LENGTH 100
#define NUMBER 8
int scan()
{
int data;
printf("Input your data :");
scanf("%d",&data);
return data;
}
void display(char array[],int index)
{
for(int j=index-1; j>=0; j--)
{
printf("%d",array[j]);
}
printf("\n");
}
void conversion(int data)
{
char array[LENGTH];
int i=0;
printf("%d 转换成八进制后为:", data);
while(data){
array[i++]=(char)(data%8);
data /= NUMBER;
}
display(array, i);
}
int main()
{
conversion(scan());
return 1;
}
第三题,给你网址,我还未编好呢,http://zhidao.baidu.com/question/76757485.html?fr=qrl&cid=93&index=2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//1题
#include<stdio.h>
int main()
{
char c;
scanf("%c",c);
printf("%x\n",c);
return 0;
}
//2题
#include<stdio.h>
int main()
{
int i;
char s[16];
scanf("%d",&i);
itoa(i,s,2);
printf("%s\n",s);
return 0;
}
//3题
#include<stdio.h>
int main()
{
int i;
scanf("%d",&i);
printf("%o\n",i);
return 0;
}
//可怜的孩子,这几个题是最简单的了,无非是让你熟练掌握C语言的标准输入输出和类型的转换而已。
#include<stdio.h>
int main()
{
char c;
scanf("%c",c);
printf("%x\n",c);
return 0;
}
//2题
#include<stdio.h>
int main()
{
int i;
char s[16];
scanf("%d",&i);
itoa(i,s,2);
printf("%s\n",s);
return 0;
}
//3题
#include<stdio.h>
int main()
{
int i;
scanf("%d",&i);
printf("%o\n",i);
return 0;
}
//可怜的孩子,这几个题是最简单的了,无非是让你熟练掌握C语言的标准输入输出和类型的转换而已。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//第一题
#include <iostream>
main()
{char ch;
ch=getchar();
if (((ch >= '0')&&(ch <= '9')) ||
((ch >= 'a')&&(ch <= 'z')) ||
((ch >= 'A')&&(ch <= 'Z')))
{
printf("%d\n",ch);
}
else
{
return 0;
}
}
//第二题等等吧
//第三题#include <stdio.h>
main()
{int n;
scanf("%d",&n);
printf("%o\n",n);
return 0;
}
#include <iostream>
main()
{char ch;
ch=getchar();
if (((ch >= '0')&&(ch <= '9')) ||
((ch >= 'a')&&(ch <= 'z')) ||
((ch >= 'A')&&(ch <= 'Z')))
{
printf("%d\n",ch);
}
else
{
return 0;
}
}
//第二题等等吧
//第三题#include <stdio.h>
main()
{int n;
scanf("%d",&n);
printf("%o\n",n);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这些都是基础的编程题,算法书上都有介绍啊,建议自己写写看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询