C语言基础知识系列

这几天,我也是刷了一些题目,在题目中寻找到自己的一些基础不够牢固的地方,在这里分享给大家,和大家一起再巩固巩固。

1,#可以用来控制进制前导显示

如,我们想将一些数字用八进制,十六进制来表示,希望计算机能在其前面加0,0x来分辨其是一个八进制,十六进制的数,那么这个时候,用#就可以很好实现。

#include<stdio.h>
int main()
{
    int i=8;
   printf("%o\n",i);//10
   printf("%#o",i);//010
   return 0;
}

2,打印16进制数时,用%x,x的大小写会决定后面的打印出来的十六进制数的字母的大小写。

#include<stdio.h>
int main()
{
  int i=15
  printf("%x\n",i);//f
   printf("%X\n",i);//F
  return 0;
}

3,printf可以使用格式控制串%md,来控制输出域宽为m的十进制数

这个较为基础

#include<stdio.h>
int main()
{
   int i=3;
   printf("%d\n",i);//3
   printf("%2d\n",i);// 3
  return 0;
}

同样可以用于其他的格式打印符。

4,通过scanf函数的%m可以指定输入数的域宽,按此域宽截取需要的数据

#include<stdio.h>
int main()
{
    int i;
    scanf("%2d",&i);//不论输入多大的数,最终只会截取前两个
   printf("%d",i);
   return 0;
}

5,通过printf函数的%0格式控制符,输出数值的指定左面不使用的空位置自动补上0.

#include<stdio.h>
int main()
{
  int i=3;
  printf("%d\n",i);//3
  printf("%02d",i);//03
  return 0;
}

 6,使用long int 时需用“%ld”来打印,long long 则用lld否则会出现截断现象,当然不同编译器情况可能不同。

此处就不用特殊情况来举例了。

6,EOF是文件结束符,可以用其来实现连续多组输入。

下面介绍三种方法实现

1,有规定数量的

#include<stdio.h>
int main()
{
    int n=0;
    while(n--)
     scanf(......);
   return 0;
}

2,实现连续读入

#incude<stdio.h>
int main()
{
   int n;
   while(scanf("%d",&n)!=EOF);
   return 0; 
}

#incude<stdio.h>
int main()
{
   int n;
   while(scanf("%d",&n),n!=0);
   return 0; 
}

以上就是这几天刷题刷到的知识点不够牢固的地方了,拿出来和大家一起再复习复习。

如有错误请联系修改

posted @   C_Ryson  阅读(42)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示