c语言日常 10_10练习

1.猜数字游戏
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
 int ret;
 int num=0;
 srand((unsigned int)time(NULL));
 ret=rand()%100;
 scanf("%d",&num);
 while(num!=ret)
 {
  if(num>ret)
  {
   printf("too big!\n");
  }
  if(num<ret)
  {
   printf("too small!\n");
  }
  scanf("%d",&num);
 }
 printf("right!");
 return 0;
}
2.binsearch
#include<stdio.h>

int binsearch(int a,int arr[],int left,int right)
{
 int mid;
 mid=left-(left-right)/2;
 while(left!=right)
 {
  if(a<=arr[mid])
  {
   
   if(a==arr[mid])
   {
    return mid;
   }
   else
    right=mid-1; 
  }
  else if(a>arr[mid])
  {
   left=mid+1;
  }
  mid=left-(left-right)/2;
 }
 if(a==arr[mid])
 return mid;
 else
  return -1;
}
int main()
{
 int arr[]={1,3,5,7,8,10};
 int left=0;
 int right=sizeof(arr)/sizeof(arr[0])-1;
 int temp=binsearch(3,arr,left,right);
 printf("%d ",temp);
 return 0;
}
3.输出行号
#include<stdio.h>

int main()
{
 char ch;
 int i=1;
while((ch=getchar())!=EOF)
{
 printf("%d ",i++);
 while((ch=getchar())!=‘\n‘)
 {
  putchar(ch);
 }
 printf("\n");
}
 return 0;
}
4.找出最大和最小值
#include<stdio.h>

int main()
{
 int arr[]={1,2,3,4,5,6,7,8,9,10};
 int max;
 int min;
 int i;
 max=arr[0];
 min=arr[0];
 for(i=1;i<10;i++)
 {
  if(max<=arr[i])
   max=arr[i];
 }
 for(i=1;i<10;i++)
 {
  if(min>=arr[i])
   min=arr[i];
 }
 printf("max=%d  min=%d",max,min);
 return 0;
}
5.组合无重复数
#include<stdio.h>

int main()
{
 int i,j,m;
 for(i=1;i<5;i++)
 {
  for(j=1;j<5;j++)
  {
   if(j==i)
   continue;
   for(m=1;m<5;m++)
   {if(m==i||m==j)
     continue;
   printf("%d ",i*100+j*10+m);
   }
  }
 }
 return 0;
}

时间: 2024-08-30 14:28:42

c语言日常 10_10练习的相关文章

R语言—日常随笔

1.字符处理函数:paste() 需求:将字符向量中的字符串,用逗号隔开,合并为一句话. > ##字符向量 > ls_1 [1] "天津" "上海" "安徽" "福建" "四川" "重庆" "陕西" "青海" "新疆" > ##用逗号隔开字符串,并合并为一句话 > paste(ls_1, sep = &q

c语言日常 10_8练习

1.#include<stdio.h>#include<string.h>#include<windows.h> int main(){ int i; char a[]="###############"; char b[]="welcome to bit!";    int num=15; printf("%s\n",a); for(i=0;i<=num/2;i++) {  a[i]=b[i];  a[

C语言 日常小结

1.当数组当作函数参数的时候会退化为指针 #include<stdio.h> #include<stdlib.h> void sort(int a[]){ int num = sizeof(a); printf("数组的大小num=%d\n", num);//打印4,此时a是一个指针 //打印数组 for (int i = 0; i < 10; i++) { printf("%5d", a[i]); } } void main(){ i

关于学习技术的方法的随想

box(com本质论作者)说过:理解编程模型最可靠的的方法是抓住COM的基本词汇表,并精通这些词汇的语义.我想这个不单单指的是COM技术的学习方法,也是其他技术学习的金玉良言.虽然看似概念是纸上谈兵,而write code被认为才是最快最见效的学习方法,但是write code也有劣势,比如大家都心里或多或少的存在“做web没什么技术含量”,究其原因是什么?为什么大家认为web开发是copy and paste?另一方面为什么又推崇编程语言从c语言学起,认为有c语言工作经验的人技术扎实? 我个人

Monthly-201901 tutorial

Monthly-201901 tutorial 题目(难度递增) easy easy-medium medium medium-hard hard 思维难度 AHG F B CE D 编码难度 AH CEFG B D A. RonTanYoYiSen 对于本题,你只需要FOR一遍判断是不是回文串即可.不管一个字符串是不是回文串,只有将它反过来再写一边就可以构造出一个回文串.根据题意,如果是回文串则输出"YES NO",否则输出"NO YES". 复杂度\(O(N)\

【C语言的日常实践(十四)】constkeyword详细解释

const是C语言keyword,它定义一个变量不同意变更.使用const在一定程度上,可以提高节目的安全性和可靠性.其他.解const的作用,在看别人的代码时,对理解对方的程序有一定帮助. 1.const可以理解成是"仅仅读变量"的限定词.从这里可以看出,const修饰的是变量,跟常量是不同的,常量是被编译器放在内存中的仅仅读区域,当然也就不可以去改动它. 而"仅仅读变量"则是在内存中开辟一个地方来存放它的值.仅仅只是这个值由编译器限定不同意被改动.const就是

电脑日常技巧:没有语言栏,怎么办???

一. 按ctrl+空格键,再按ctrl+shift切换 或者右击任务栏空白处-工具栏-语言栏即可. 二. 首先打开文字服务 1. 单击开始,单击 控制面板,然后双击“区域和语言选项”. 2. 在语言选项卡上的“文字服务和输入语言”下,单击详细信息. 3. 在首选项下,单击语言栏. 4,选择“关闭高级文字服务”复选框,,把里面的钩去掉. 三.其次设置语言栏的输入法 1. 单击开始,单击控制面板,然后双击“区域和语言选项”. 2. 在语言选项卡上,在“文字服务和输入语言”下,单击详细信息. 3. 在

[日常] Go语言圣经--作用域,基础数据类型,整型

go语言圣经-作用域 1.一个声明语句将程序中的实体和一个名字关联,比如一个函数或一个变量 2.一个变量的生命周期是指程序运行时变量存在的有效时间段;声明语句的作用域对应的是一个源代码的文本区域,它是一个编译时的属性 3.句法块是由花括弧所包含;我们可以把块(block)的概念推广到包括其他声明的群组,这些声明在代码中并未显式地使用花括号包裹起来,我们称之为词法块. 4.全局作用域 包级语法域 源文件级的作用域 局部作用域 函数级的作用域 5.从最内层的词法域向全局的作用域查找.内部的会覆盖外部

[日常] Go语言圣经--复数,布尔值,字符串习题

go语言圣经-复数 1.我们把形如a+bi(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,i称为虚数单位.两种精度的复数类型:complex64和complex128,分别对应float32和float64两种浮点数精度 2.complex函数用于构建复数,real和imag函数分别返回复数的实部和虚部 go语言圣经-布尔型 1.布尔值可以和&&(AND)和||(OR)操作符结合,并且有短路行为 2.&&的优先级比||高 go语言圣经-字符串 1.一个字符串是一