c program

来源:百度知道 编辑:UC知道 时间:2024/05/22 18:05:48
(1) 将一个小于256的十进制正整数转换成八位二进制形式输出
具体要求:
1)十进制数从键盘输入,且在输入前有所提示信息
2)若转换的二进制不够八位,则在前面补“0”
3)输出结果形式为:十进制数----à二进制数

(2) 实验三的(5)进行改造,增加要求:
程序要有连续处理能力,当且仅当输入的4个数全为零时,程序结束

实验三(5) 输入4个互不相等的整数,输出其中最小的一个
具体要求:
整数允许的范围为-215~215-1,若输入越界,则给出出错信息

(3) 编写一个程序,不断接受用户输入的学号和相应成绩,直到输入的学号为0时,输出所有输入中成绩最高的学号和成绩及成绩最底的学号和成绩

(4) 将小于n 的所有个位不等于9的素数在屏幕上打印出来,n的具体值由拥护输入来确定。(素数:只能被1和本身整除的整数)要求:每行输出10个数,分行显示

1.
#include "stdio.h"

void main()
{
unsigned char num;
char bin[9];
printf("Input a number between 0 and 255:");
scanf("%d", &num);
for(int i = 0; i < 8; i++)
{
bin[i] = '0';
}
bin[8] = '\0';

int n = num;
i = 7;
while(n > 0)
{
if (n % 2 == 1)
{
bin[i--] = '1';
}
else
{
bin[i--] = '0';
}
n /= 2;
}

printf("%d----%s\n", num, bin);
}

2.
#include "stdio.h"

void main()
{
int a[4];
while(1)
{
printf("Input a,b,c,d:");
scanf("%d%d%d%d",a,a+1,a+2,a+3);
if(a[0]==0 && a[1]==0 && a[2]==0 && a[3]==0)
{
break;
}
if(a[0] < -215 || a[0] > 214)
{
printf("a is illegal\