1   1  /  1  页   跳转

有点C小问题急需

有点C小问题急需

谁能告诉我1、输入整数a和b,如果a 能被b整除,就输出算式和商,否则输出算式、整数商和余数。
例如:若a的值为5,b的值为2,则输出5/2=2,5%2=1;
     若a的值为4,b的值为2,则输出4/2=2
2、输入两个字符,若这两个字符之差为偶数,则输出它们的后继字符,否则输出它们的前趋字符。这里的前趋和后继是指输入的两个字符中,较小字符前面的和较大字符后面的那个字符。
例如:’g’的前趋字符是’f’, ’g’的后继字符是’h’

3、从键盘输入两个整数a和b, 若2*a+2*b大于100,则先输出2*a+2*b百位以上(包括百位数字)的数字,然后输出百位以下的数字;否则输出两数之和.
怎么做啊 急需
最后编辑2006-03-17 01:21:42
分享到:
gototop
 

你的问题并不难,但是要费时间好好想想啊
1.其实就是循环除,记得当数字为int型时,如果不够除,商就是零,用这个做条件进行循环除就可以了。
2.这个更简单啊,就用if条件判断就可以了,做减法的话可以使用强制类型转换,不过提醒你转换short,因为一般计算机中,char是8位,short也是8位。
3.这个也简单,关键在于如何取得百位数,其实只要分情况判断,100-100只要把原来的数除以100就可以了,10000-100就除以1000后再除以100,依此类推。
或者把数字转化为字符数组,c++里有库函数可用,c里没有,不过只要翻翻c++的include文件,找到源码,复制一个放c里就行了。
gototop
 

第一题
#include<stdio.h>

void main()
{
    int a;
    int b;
    int k;
    int flag;
    char ch;

    while (flag!=1)
    {   
        flag=0;
        printf("请输入数a: ");
        scanf("%d",&a);
        printf("请输入数b: ");
        scanf("%d",&b);
        while (b==0)
        {
            printf("除数不能为零!\n");
            printf("请输入数b: ");
            scanf("%d",&b);
        }
        if (a%b==0)
        {
            printf("%d/%d=%d\n",a,b,a/b);
        }
        else
        {
            printf("%d/%d=%d  %d%%%d=%d\n",a,b,a/b,a,b,a%b);
        }
        printf("\n继续输入吗?(y/n): ");
        scanf("\n%c",&ch);
        if(ch=='y' || ch=='Y')
        {
            flag=0;
        }
        else
        {
            if(ch=='n' || ch=='N')
            {
                flag=1;
            }
            else
            {
                while (k!=1)
                {    k=0;
                    printf("只能输入y,Y,n,N ");
                    printf("继续输入吗?(y/n): ");
                    scanf("\n%c",&ch);
                    if (ch=='y' || ch=='Y')
                    {
                        k=1;
                    }
                    else
                    {
                        if (ch=='n' ||ch=='N')
                        {
                            k=1;
                            flag=1;
                        }
                    }
                }
            }
        }
       
    }
   
}
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT