欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

自学C语言笔记一

程序员文章站 2022-07-15 10:02:24
...

这是中国大学MOOC浙江大学“程序设计入门——C语言”的练习题目集的第I阶段,包含变量、语句、循环部分的题目,不包括数组、结构、基础算法的题目。

1.对于输入的两个整数,按照要求输出其和差积商。
**输入格式:**在一行内输入两个不超过100的非负整数a和b,中间以一个空格间隔,且保证b不为0。
**输出格式:**共四行,格式是:
[a] + [b] = [a+b]
[a] - [b] = [a-b]
[a] * [b] = [a*b]
[a] / [b] = [a/b]
其中,带有方括号的内容(如[a]、[b]、[a+b]等)表示相应整数或运算结果的值,在输出时要用实际的值代替。
并且:如果a能够被b整除,那么a/b应输出为整数格式,否则a/b输出为带两位小数的格式。

#include <stdio.h>
int main()
{
    int A=0;
    int B=0;
    scanf("%d %d",&A,&B);
    printf("%d + %d = %d\n",A,B,A+B);
    printf("%d - %d = %d\n",A,B,A-B);
    printf("%d * %d = %d\n",A,B,A*B);
    if(A%B==0)
    {
    printf("%d / %d = %d\n",A,B,A/B);  
    }
    else
    {
    printf("%d / %d = %.2f\n",A,B,A/(B+0.0));**//除以(B+0.0)可得浮点型结果**
    }
    return 0;
}

2.世界上不同国家有不同的写日期的习惯。比如美国人习惯写成“月-日-年”,而中国人习惯写成“年-月-日”。下面请你写个程序,自动把读入的美国格式的日期改写成中国习惯的日期。
**输入格式:**输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。
**输出格式:**在一行中按照“yyyy-mm-dd”的格式给出年、月、日。

#include <stdio.h>
int main()
{
    int a,b,c; 
    scanf("%d-%d-%d",&a,&b,&c); 
    printf("%d-%02d-%02d",c,a,b); //%02d:2是宽度。如果整数不够2列就补上0,超出则正常输出。
    return 0;
}

3.有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。
读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,即5点30分表示为530。注意,第二个数字表示的分钟数可能超过60,也可能是负数。
**输入格式:**输入在一行中给出2个整数,分别是四位数字表示的起始时间、以及流逝的分钟数,其间以空格分隔。注意:在起始时间中,当小时为个位数时,没有前导的零,即5点30分表示为530;流逝的分钟数可能超过60,也可能是负数。
**输出格式:**输出四位数字表示的终止时间,当小时为个位数时,没有前导的零。题目保证起始时间和终止时间在同一天内。

#include <stdio.h>
int main()
{
    int A=0,B=0,C=0;
    scanf("%d %d",&A,&B);
    C=(A/100)*60+(A%100);
    int hour=0,min=0;
    hour=(C+B)/60;
    min=(C+B)%60;
    printf("%d%02d",hour,min);
    return 0;
} 
\\全部转换为分钟