求助两个C语言程序

来源:百度知道 编辑:UC知道 时间:2024/06/24 00:05:45
第一题 :给定一个不多于5位的正整数,要求:(1)求它是几位数;(2)分别打印出每一位数字;(3)按逆序打印出各位数字。例如原数为321,应输出123

第二题:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?

在线等,TC2.0环境下运行

第一题:
#include <stdio.h>

void main()
{
int a[5]={0},i,j,k;
j=0;
scanf("%d",&i);
while(i)
{
a[j]=i%10;
i=i/10;
j++;
}
printf("该数字是%d位数。\n",j);
//j--;
k=j;
printf("顺序输出:\n");
for(j=k-1;j>=0;j--)
{
printf("%d",a[j]);
}
printf("\n");
printf("逆序输出:\n");
for(j=0;j<k;j++)
{
printf("%d",a[j]);
}
printf("\n");
}

第二题:
#include <stdio.h>
void main()
{
float money,bont1,bont2,bont4,bont6,bont10,i;
int c;
bont1=100000*0.1;
bont2=bont1+100000*0.075;
bont4=bont2+200000*0.05;
bont6=bont4+200000*0.03;
bont10=bont6+400000*0.015;
printf("please input a money:");
scanf("%f",&money);
c=(int)(money/100000);