C语言实现数字游戏

本文实例为大家分享了C语言数字游戏的具体代码,供大家参考,具体内容如下

问题描述 :

现在,有许多给小孩子玩的数字游戏,这些游戏玩起来简单,但要创造一个就不是那么容易的了。 在这,我们将介绍一种有趣的游戏。

你将会得到N个正整数,你可以将一个整数接在另一个整数之后以制造一个更大的整数。 例如,这有4个数字123, 124, 56, 90,他们可以制造下列整数─ 1231245690, 1241235690, 5612312490, 9012312456, 9056124123…等,总共可以组合出24(4!)种数字。 但是,9056124123是最大的那一个。

你可能会想这是个简单的事情,但对刚有数字概念小孩来说,这会是个简单的任务吗?

输入说明 :

输入含有多组测试数据。
每组测试资料两行,第一行为一个正整数N(N<= 50),第二行将有N 个正整数。
当N=0代表输入结束。

输出说明 :

对每一组测试数据,输出一行,输出利用这N个整数可结合成的最大整数。

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
char a[51][1000];//输入的数用全局变量来操作,和他之后的数一个一个去比较,交换位置
int cmp(int x,int y){
  char b[1000],c[1000],str[1000];
  int i,num1,num2;
  strcpy(b,a[x]);
  strcpy(c,a[y]);
  num1=strlen(a[x]);//数的长度
  num2=strlen(a[y]);
   //字符串拼接
  for(i=num1;i<=num1+num2;i++)
    b[i]=c[i-num1];
  for(i=num2;i<num1+num2;i++)
    c[i]=b[i-num2];
  c[i]='\0';
  return strcmp(b,c);//看a[i]a[j]大还是a[j]a[i]的数比较大
 }
 int main(){
  int n,i,j;
  while(scanf("%d",&n)!=EOF){
    for(i=0;i<n;i++)
      scanf("%s",a[i]);
    char temp[1000];
    for(i=0;i<n-1;i++){
      for(j=i+1;j<n;j++){
       if(cmp(i,j)<0){//交换位置
         strcpy(temp,a[i]);
         strcpy(a[i],a[j]);
         strcpy(a[j],temp);
       }
  }
    }
    for(i=0;i<n;i++)
      printf("%s",a[i]);
    printf("\n");
  }
  return 0;
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C语言的数字游戏算法效率问题探讨实例

    最近做了这样一个题目,感觉挺有趣~题目如下: 问题描述 Winder 最近在玩一个数字游戏,该游戏是在一个n*m 的网格上进行的,每个格子上有 一个数字,代表这个格子的数值.玩家需要从网格的左上角的格子走到右下角的格子,每次 只能向右或者向下走,并且不能回头.玩家每经过一个格子可以选择分值是否加上该格子的 数值,每次游戏的初始分数都是0. Winder 想知道在每场游戏,他最多能够得到多少分值.但是,Winder 很懒,所以你必 须帮他来完成这件事. 数据输入 输入第一行两个正整数N 和M(0<

  • C语言实现猜数字游戏

    本文实例为大家分享了C语言猜数字的具体代码,供大家参考,具体内容如下 题目:电脑随机给出一个数字,在一定范围内猜,有提示 问题分析: 电脑根据函数随机给出一个范围内的数字: 用户输入数字,去猜大小 对比数字,电脑给出提示 不断循环,直到猜正确 注意: 因为随机函数rand()是特殊的函数,计算机不会实现真正的随机数,所以需要一个seek来传给 rand(). 代码如下: #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<

  • C语言实现数字游戏

    本文实例为大家分享了C语言数字游戏的具体代码,供大家参考,具体内容如下 问题描述 : 现在,有许多给小孩子玩的数字游戏,这些游戏玩起来简单,但要创造一个就不是那么容易的了. 在这,我们将介绍一种有趣的游戏. 你将会得到N个正整数,你可以将一个整数接在另一个整数之后以制造一个更大的整数. 例如,这有4个数字123, 124, 56, 90,他们可以制造下列整数─ 1231245690, 1241235690, 5612312490, 9012312456, 9056124123-等,总共可以组合出

  • C语言超详细讲解猜数字游戏的实现

    目录 rand函数 srand函数 时间戳 完整代码与程序运行图 rand函数 先看一下下面这张图: 通过这张图我们可以了解到rand函数的返回值是int类型,形参为空,它的头文件<stdlib.h>以及它的返回值范围是0到RAND_MAX. 而RAND_MAX在VS中是0x7fff,转换成二进制就是32767.所以rand返回的随机数的范围就是0到32727. 其实我们用rand函数就可以生成随机数了,那为什么我们还要用到srand函数呢? 因为只有第一次生成的随机数是随机的,如果程序执行多

  • C语言详解实现猜数字游戏步骤

    目录 前言 一.猜数字游戏是什么 二.使用步骤 总结 前言 本文详细介绍了猜数字游戏的具体实现逻辑 一.猜数字游戏是什么 1.电脑自动生成一个1-100以内的数字 2.我们输入一个我们猜的数字 3.如果我们猜的数字比电脑随机生成的数字大,那么输出(猜大了) 4.如果我们猜的数字比电脑随机生成的数字小,那么输出(猜小了) 5.如此循环往复,猜到正确的数字之后游戏结束 二.使用步骤 1.首先应该打印菜单 代码如下 void menu() { printf("*********************

  • 用C语言实现猜数字游戏

    本文实例为大家分享了C语言实现猜数字的具体代码,供大家参考,具体内容如下 问题:计算机随机生成一个数字,用户进行猜数字,当用户猜错时,提醒用户猜高/猜低,直到用户猜的数字与计算机给的随机数一致时,提示猜对了并结束本次游戏. 思路:整个程序分为三个部分. 1.使用printf完成一个主菜单,方便用户操作. 2.写一个game函数,完成猜数字游戏的过程. 3.主函数,调用game函数,最终实现猜数字游戏. 重点:如何生成一个随机数. 如果直接使用to_guess = rand() % 100 + 1

  • C语言实现数字炸弹小游戏

    本文实例为大家分享了C语言实现数字炸弹小游戏的具体代码,供大家参考,具体内容如下 使用的是C语言 # 内容 #include<stdio.h> #include<stdlib.h> int main(){ //变量 char c_TheRequest = 1;//开始界面的字符 int in_Deltar = 1,in_EnteredNumber,in_Sig;//游戏中输入数字及其判定所需要的数字 int in_GivenNum = 0,in_An = 0,in_Bn = 0;/

  • 利用C语言实现猜数字游戏

    本文实例为大家分享了C语言实现猜数字游戏的具体代码,供大家参考,具体内容如下 实现效果如图: 代码如下: #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int Guess,Num; //Guess猜数,Num随机数 int Next; //下一次执行 do { system("cls"); //清屏 printf("-------------------

  • 基于C语言实现猜数字游戏

    前言 系统生成一个[1,100]之间数字,用户随便输入一个整数,如果用户输入的数字比系统生成的数字小,提示"猜低了",如果用户输入的数字比系统生成的数字大提示猜高了,如果相同,提示猜对了. 一.先生成一个[1,100]的随机整数 C语言的标准库中已经包含了很多现成的功能,rand可以生成一个随机整数,可以查阅cplusplus文档.浏览器输入www.cplusplus.com.cstdlib这是C++风格的写法,stdlib.h是C语言风格的写法,C++也可以用stdlib.h.C语言

  • C语言实现简单猜数字游戏

    前言 对于c语言初学者来说用c语言实现猜数字游戏是基本的问题,本篇文章会细致的讲解如何用代码来实现猜数字游戏.希望读者在阅读本篇博客前学习玩分支与循环和最基本的c语言语法知识. 提示:以下是本篇文章正文内容,下面案例可供参考 一.预期实现猜数字游戏的功能 1:什么是猜数字游戏 猜数字游戏顾名思义是电脑随机生成一个数字,让玩家来猜.如果没猜对,电脑会提示玩家猜大了还是猜小了,玩家可以多次尝试,直到玩家猜对了本次游戏就结束. 2:预期效果 在实现猜数字的基础上,玩家如果觉得不过瘾可以选择再来一次,如

  • Java简单实现猜数字游戏附C语言版本

    目录 前言 一.C语言版本 代码 运行结果 二.Java版本 代码 运行结果 总结 前言 以前在学C语言的时候,做过一个猜数字游戏,这两天学了Java的逻辑结构,试着用Java实现下. 一.C语言版本 以前做的C语言版本. 代码 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <time.h> void menu() { printf("******

随机推荐