c语言神奇
‘壹’ c语言程序代码神奇效果如何运行
一.首先,打开我们的Visual C++ 6.0软件
1.然后点击上图工具栏中的文件,里面有个新建菜单,然后我们可以设置一下我们的工作空间,
2.然后在一步步默认点击确定,完成即可,此时工作空间就建立起来了!
二.接下来,再点击工具栏下的文件,里面有个新建菜单,点击它。
1.点击确定即可,创建出一个小程序。
2.程序代码如下:
#include <stdio.h>
void main()
{
printf("Hello World \n");
}
3.此时就需要我们的VC++ 6.0来编译此程序,编译无错误才运行此程序,编译按钮和运行按钮。
4.或者可以点击组建工具栏下的编译菜单项,然后再点击执行菜单项,也有快捷键,按Ctrl+F7编译此程序,按Ctrl+F5运行此程序。
5.编译无错误的话,点击运行按钮。
三.代码解析:
1.其中第一行的#include <stdio.h>,这行代码是编译预处理指令,用来提供输入输出函数的声明和宏的定义,全局量的定义这些信息。stdio.h是系统提供的一个文件名,stdio是为standard input & output的缩写,意为标准输入输出,文件后缀.h的意思是头文件(header file),因为这些文件都是放在程序各文件模块的开头的。总的来说,输入输出函数的相关信息已事先放在stdio.h文件中,然后,要用#include指令把这些信息调入供使用。
2.void main(){},main是主函数的函数名,表示这是一个主函数,每一个C源程序都必须有且只能有一个主函数。
3.函数调用语句,即调用printf("Hello World \n");语句 ,printf函数的功能是把要输出的内容送到显示器去显示,即打印输出Hello World到windows 控制台下,其中\n为转义字符,具有转行的功能。
4.printf函数是一个由系统定义的标准函数,可在程序中直接调用。
‘贰’ 用c语言求出圆周率,这是一个神奇的程序。求解释
这个比较出名的程序,三行语句求PI
按公式PI/2=∑(n!/(2n+1)!!) 计算Pi
计算2800项就可以精确到小数点后800位
正常的写法
#include"stdio.h"
longb,c,d,e,f[2801];
voidmain()
{
for(inti=0;i<2800;i++)f[i]=2000;
f[2800]=0;
for(c=2800;c>0;c-=14)
{
d=0;
for(b=c;b>0;b--)
{
d+=f[b]*10000;
f[b]=d%(2*b-1);
d/=(2*b-1);
if(b>1)
d*=(b-1);
}
printf("%.4d",e+d/10000);
e=d%10000;
}
}
‘叁’ 收集神奇的或功能强悍的而且短小的c语言代码
如下C语言代码:
//求两数最大公约数代码。
#include<stdio.h>
intgcd(inta,intb)//求最大公约数函数。
{
if(a%b==0)returnb;
elsereturngcd(b,a%b);//辗转相除法。
}
voidmain()
{
inta,b;
scanf("%d%d",&a,&b);//输入两个数。
printf("%d ",gcd(a,b));//输出这两个数的最大公约数。
}
给出的代码是求两数最大公约数的C语言代码。
‘肆’ C语言 神奇的魔镜
#include<stdio.h>
#include<string.h>
voidcalculate_original(char*orig,intlen)
{
inti;
intmirror=1;
if(len%2==1)
return;
for(i=0;i<len/2;i++){
if(orig[i]!=orig[len-i-1]){
mirror=0;
break;
}
}
if(mirror){
orig[len/2]=0;
calculate_original(orig,len/2);
}
}
intmain(intargc,char**argv)
{
charbuf[256];
intlen;
while(1){
memset(buf,0,sizeof(buf));
fgets(buf,256,stdin);
len=strlen(buf);
if(len==0)
break;
//removelastnewlinemark
buf[--len]=0;
calculate_original(buf,len);
printf("%s ",buf);
}
return0;
}
‘伍’ C语言 神奇的斐波那契
#include<stdio.h>
intd(intn)
{
if(n==1||n==2)
return1;
returnd(n-1)+d(n-2);
}
voidmain()
{
intm,n;
printf("请输入m,n ");
scanf("%d,%d",&m,&n);
for(inti=0;i<m;i++)
{
for(intk=0;k<n;k++)
{
if(k%2)
printf("%-4d",d(m-i));
else
printf("%-4d",d(i+1));
}
printf(" ");
}
}
‘陆’ 学C语言是怎样的体验
大学的时候有这门课程,说实话,我真的没有听懂,即使知道它很重要。
‘柒’ C语言有什么比较神奇的函数么
sound 不是标准函数,有个windows 的 Beep 函数可用:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
main()
{
Beep(523,500); Beep(587,500); Beep(659,500);
Beep(698,500); Beep(784,500);
Sleep(500);
Beep(523,500); Beep(587,500); Beep(659,500);
Beep(698,500); Beep(784,500);
}
这个唱多来米发少,多来米发少。
------------------------
比较神奇的函数是: system(命令字符串);
命令字符串可以是字符串常量,也可以是变量,通过它你可以调用各式各样系统命令,或运行其它程序。
keybd_event()函数 也是比较神奇的windows 的函数,调用它可以代替做“按键盘”的工作 -- 按下程序指定的键,抬起程序指定的键。
‘捌’ 神奇的C语言六:char可以是负数吗
当然可以
char 的范围是-128 到 127
平时用的ascii码值
都是0~127的。
但实际上 是可以负数的
想不要负数 用unsigned char
‘玖’ 真是神奇,为什么输出的是49.50(c语言)
程序一共有三个if语句,当输入h=100时,按先后顺序执行这三个语句:
先运行第一个if语句,h<110成立,运行p=h*0.5=100*0.5=50
再运行第二个if语句,h<210成立,继续运行p=110*0.5+(h-110)*0.55=55+(-10)*0.55=55-5.5=49.5,这时,变量p的值49.5已经把前面的50代替了。
到第三个if 语句,210<h不成立,不运行下面的计算式。
所以,最后打印p的值是49.5。
有什么问题请留言。
‘拾’ 神奇的C语言七:为什么C++要抛弃printf
1、最重要的原因当然是C++提供了流对象‘>>’和‘<<’,它们代表了新观念。
流对象能输出对象,而printf函数和scanf函数不能。
2、
printf本身有问题,它不是类型安全的。
举个例子。下面的程序会输出什么呢?
#include<stdio.h>
intmain()
{
floata=3.14;
printf("%d ",a);
//printf("%d ",(int)a);//强制转换,这样才能输出3
return0;
}
这个时候我们需要对a进行强制类型转换,否则输出结果就不是我们想要的3。
什么原因呢?这涉及到float、double、int的位分布问题了。
3、
首先让我们观察一下printf函数和scanf函数的声明,它们分别是:
int printf( char *, ...);
int scanf( char *, ...);
我们看到,除了第一个参数要求是char *以外,其余参数的类型不限,个数也不限。
从这一点能够看出,C语言对函数参数的数据类型是不做严格的检查的,
但是C++语言却是要做严格的类型检查的,这与C++支持函数重载有关。
4、
C++中其实也可以用printf,只不过可能会出一些问题,所以不提倡使用。
举例,在一个程序里,如果cin、cout和scanf、printf混合使用,
系统不能保证他们的执行次序是正确的,
假如我们希望输出‘你好’,也许输出的是‘好你’。