输出千位百位十位个位
#include "stdio.h"
void main()
{
int a=1234;
int b,c,d,e;
b=a/1000;
c=a/100%10;
d=a/10%10;
e=a%10;
printf("%d,%d,%d,%d",b,c,d,e);
}
比较最大值
#include "stdio.h"
void main()
{
int a,b;
int c;
scanf("%d %d",&a,&b);
c=a>b?a:b;
printf("max=%d",c);
}
三位数从大到小排列
#include "stdio.h"
void main()
{
int a,b,c;
int max,mid,min;
scanf("%d %d %d",&a,&b,&c);
if(a>b&&a>c){
max=a;
if(b>c){
mid=b;
min=c;
}else{
mid=c;
min=b;
}
}
if(b>a&&b>c){
max=b;
if(a>c){
mid=a;
min=c;
}else{
mid=c;
min=a;
}
}
if(c>b&&c>a){
max=c;
if(b>a){
mid=b;
min=a;
}else{
mid=a;
min=b;
}
}
printf("%d,%d,%d",max,mid,min);
}
考试成绩等级
#include "stdio.h"
void main()
{
int score;
scanf("%d",&score);
switch(score/10){
case 10:
case 9:
printf("A");
break;
case 8:
printf("B");
break;
case 7:
printf("C");
break;
case 6:
printf("D");
break;
default:
printf("E");
break;
}
}
100以内能被3和5整除的数,按照每3个一行输出
int i;
int j=0;
for(i=1;i<=100;i++){//适用于水仙花数、三个一行五个一行
if(i%3==0&&i%5==0){
printf("%d ",i);
j++;
if(j%3==0){
printf("\n");
}
}
}
打印菱形
#include<stdio.h>
int main()
{
int line = 0;
int i = 0;
scanf("%d", &line);
//上部分
for (i = 0; i < line; i++)
{
int j = 0;
//打印空格
for (j = 0; j < line - 1 -i; j++)
{
printf(" ");
}
//打印*
for (j = 0; j < 2 * i + 1; j++)
{
printf("*");
}
printf("\n");
}
//下部分
for (i = 0; i < line - 1; i++)
{
int j = 0;
//打印空格
for (j = 0; j < i+1; j++)
{
printf(" ");
}
//打印*
for (j = 0; j < 2 * (line - 1 - i)-1; j++)
{
printf("*");
}
printf("\n");
}
return 0;
}
百钱买百鸡
#include <stdio.h>
void main(){
int x,y,z;
int count=0;
for(x=1;x<=100;x++){//100鸡
for(y=1;y<=100;y++){//100块
for(z=1;z<=100;z++){
if(x+y+z==100 && 5*x+3*y+z/3==100 && z%3==0){
count++;
printf("公鸡:%d\n",x);
printf("母鸡:%d\n",y);
printf("小鸡:%d\n",z);
}
}
}
}
printf("%d",count);
}
排序 冒泡排序
int i,j;
int temp;
int a[]={3,7,11,5,8};
for(i=0;i<5-1;i++){//i小于长度减一
for(j=0;j<5-1-i;j++){
if(a[j]>a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(i=0;i<5;i++){//正序输出
printf("%-2d",a[i]);
}
字符串查找
#include <stdio.h>
void main(){
char ch[]={'a','b','c'};
char str[]={"abc"};//里面有4个字符,有一个隐含的\0
int i=0,index=-1;
for(i=0;i<3;i++){
if(ch[i]=='b'){//查找字符b
index=i;
break;
}
}
if(index==-1){
printf("no");
}else{
printf("%d",index);
}
}
求字符串长度
#include <stdio.h>
void main(){
char str[]={"abc"};
int length=0;
while(str[length]!='\0'){
length++;
}
printf("length=%d",length);
}
二维数组
#include <stdio.h>
void main(){
int a[3][3]={
{1,2,3},
{4,5,6},
{7,8,9}
};
int i,j,sum;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf("%d",a[i][j]);
}
printf("\n");
}
}
求对角线的和
//求主对角线的和
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i==j){
sum+=a[i][j];
printf("%d ",sum);
}
}
}
//求辅对角线的和
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if((i+j)==2){
sum+=a[i][j];
printf("%d ",sum);
}
}
}
指针接收字符串,输出字符串长度
#include <stdio.h>
void main(){
char str[20];
int len=0;
char *p;
p=str;
scanf("%s",str);
while(*p!='\0'){
len++;
p++;
}
printf("%d",len);
}