今天早上,先是复习了一下 上周学过的条件语句:
//加上一句前天习得的: 程序中最小的单位是语句。
条件语句:if······ if·······else········ if······else if······else
多分支语句:switch(常量){
case常量1:值或表达式;
break;
default: //所有case都不满足的请款下,执行本语句(vs上用,才累计到的新知识)。
break;
}
先判断,再循环语句:while
先执行,再判断循环:do·······while
万能循环语句:for
下午用函数写出几个小数字的365次方,用float定义和格式输出会导致输出的结果损失精度,所以,问得,用double类型并输出是用%e格式输出能最大保留小数精度。
#include<stdio.h>
#include<math.h>
void main(){
double i,j,k,m;
i = pow(1.01,365);
j = pow(0.99,365);
k = pow(1.02,365);
m = pow(0.98,365);
printf("i %e\nj %e\nk %e\nm %e\n",i,j,k,m);
getchar();
}
输出的结果比较复杂,但是过程是没有问题的!
课堂上,还要求输入一个数,得出它是几位数的小程序,语句比较短,但是百位以内是无误的哦!
#include<stdio.h>
void main(){
printf("请输入数字:"); //其实可以用循环+判断/10次数来判断一个数是几位数,但是这里就比较简陋了
int i;
scanf("%d",&i);
if(i/10==0){
printf("她是一个个位数");
}else if(i/100==0){
printf("她是一个十位数");
}else if(i/1000==0){
printf("她是一个百位数");
}else
printf("她是一个很多位数,hhh");
getchar();
getchar();
}
下面是一个比较固定的分数所属的分段的评级,结尾用的default是因为前面的选项都没有满足的条件,则执行这一句,VS里的固定搭配格式学到的!
#include<stdio.h>
void main(){
int i; //i是手动输入的成绩
printf("请输入成绩:");
scanf(" %d",&i);
switch(i){
case 100 : printf("完美");
break;
case 90 : printf("卓越");
break;
case 80 : printf("优秀");
break;
case 70 : printf("一般");
break;
case 60 : printf("及格");
break;
default:printf("不及格");
break;
};
getchar();
getchar();
}
下面是0-300之间,不能被三整出的数打印,以及他们的和打印:
#include<stdio.h>
void main(){
int s = 0;
for(int i =0;i<300;i++){
if(i%3!=0){
printf("%d\t",i);
s+=i;
};
};
printf("总和:%d",s);
getchar();
}
上面几个代码都是下午课堂半小时内完成的小编写。另外还有一个有趣的代码(调戏qq,让qq按照你的想法去移动特定位置):
#include<windows.h>
#include<stdio.h>
#pragma comment(lib,"User32.lib")
void openQq();
void moveQQ()
{
HWND win = FindWindowA("TXGuiFoundation", "QQ");<span style="white-space:pre"> </span>//HWNDshi qq的编号 find寻找窗口
if (win == NULL)
{
printf("QQ在玩失踪");
}
int i = 0;
while (i < 768){
SetWindowPos(win, NULL, i * 16 / 9, i, 500, 400, 0);<span style="white-space:pre"> </span>//屏幕的分辨率!
i += 10; <span style="white-space:pre"> </span>//每次增加10像素
Sleep(100);
if (i / 10 % 2)
{
ShowWindow(win, SW_HIDE);
}
else
{
ShowWindow(win, SW_SHOW);
}
}
}
void main()
{
//system("taskkill /f /im qq.exe");
openQq();
Sleep(5000);
moveQQ();
Sleep(5000);
}
void openQq()
{
ShellExecuteA(0, "open", "\"E:\\Program Files(x86)\\Tencent\\QQ\Bin\\QQScLauncher.exe\"", 0, 0, 1); //qq的主程序路径,最后的1决定是影身或者不影<span style="white-space:pre"> </span> //<span style="white-space:pre"> </span>身启动
}
求S = 1/1+1/2+1/3+····+1/n的和的函数:(n是自己手动输入的数字)
void main(){
printf("请输入数字:");
float n;
float i = 1;
float s;
scanf(" %f",&n);
for(i;i<=n;i++){
s+=1/i;
};
printf("答案是:%f",s); //求出的s是s=1/1+1/2+···+1/n的结果
getchar();
getchar();
}
下面这个就比较有趣的吃内存,无限弹窗的小程序(可以注射到qq微信等程序中):
#include<stdio.h>
#include<windows.h>
#pragma comment(lib,"User32.lib")
void main(){
do
{
malloc(1024 * 1024 * 10);
Sleep(1000);
MessageBoxA(0, "请你买个登山包", "尊贵的QQVIP", 0);
} while (1);
}
//无限弹窗死循环代码
让dos命令窗口变色的小函数
#pragma comment(lib,"User32.lib")
#include<stdio.h>
#define _CRT_SECURE_NO_WARNINGS
#include<stdlib.h>
#include<windows.h>
void main(){
char str[20];
for(int i =0;i<16;i++){
sprintf(str,"color %x%x\n",i,15-i);
system(str);
Sleep(3000);
};
getchar();
}
今天学习了9个小函数,还有2都是之前学习过的,便不再列出~
: